Methods and apparatus to detect unconfined view media

ABSTRACT

Methods, apparatus, systems and articles of manufacture are disclosed to detect unconfined view media. A disclosed apparatus includes means for generating a pixel map to generate a reference pixel map for media data; means for detecting a field of view to detect a field of view for a presentation of the media data; and means for determining a view edge to determine a first view edge based on the field of view and the reference pixel map and that the media data corresponds to unconfined view media based on the first view edge.

This patent arises from a continuation of U.S. patent application Ser.No. 16/908,680, filed on Apr. 22, 2020, entitled “METHODS AND APPARATUSTO DETECT UNCONFINED VIEW MEDIA”, which arises from a continuation ofU.S. patent application Ser. No. 15/498,177, filed on Apr. 26, 2017,entitled “METHODS AND APPARATUS TO DETECT UNCONFINED VIEW MEDIA.” U.S.patent application Ser. No. 16/908,680 and U.S. patent application Ser.No. 15/498,177 are hereby incorporated herein by reference in theirentirety.

FIELD OF THE DISCLOSURE

This disclosure relates generally to monitoring media and, moreparticularly, to methods and apparatus to detect unconfined view media.

BACKGROUND

In recent years, the presentation of media content (e.g., a video, animage) has evolved significantly. Specifically, media content is nowcapable of being viewed in an unconfined state (e.g., 360-degrees) onpersonal computers, mobile devices, smart televisions, and/or dedicatedover-the-top (OTT) devices (e.g., Roku media devices, AppleTV mediadevices, GoogleTV media devices, FireTV media devices, etc.). Inparticular, unconfined media can be manipulated during presentation toview other areas separate from the field of view of the device (e.g.,what is currently being displayed). For example, when viewing unconfinedmedia on a computer, a mouse is used to pan around the media by clickingand dragging. Alternatively, smartphones use an internal sensor such asa gyroscope to pan the media based on the orientation of the device.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example media detection system in accordance withthe teachings of this disclosure.

FIG. 2 illustrates an example media decoder of FIG. 1 that may beimplemented with the examples disclosed herein.

FIG. 3 illustrates an example meter of FIG. 1 that may be implementedwith the examples disclosed herein.

FIGS. 4A and 4B are example representations of a pixel map and a fieldof view that may be generated using the example pixel map generator andVirtual Reality (VR) renderer of FIG. 2.

FIG. 5 is a flowchart representative of machine readable instructionsthat may be executed to implement the example media decoder, the examplemeter, and the example data analyzer of FIGS. 1, 2 and 3.

FIG. 6 is a flowchart representative of machine readable instructionsthat may be executed to implement the example media decoder, the examplemeter, and the example data analyzer of FIGS. 1, 2 and 3, and to performthe processes of FIG. 5 to generate a reference pixel map for mediadata.

FIG. 7 is a flowchart representative of machine readable instructionsthat may be executed to implement the example media decoder, the examplemeter, and the example data analyzer of FIGS. 1, 2 and 3, and to performthe processes of FIG. 5 to detect a field of view for the media data.

FIG. 8 is a flowchart representative of machine readable instructionsthat may be executed to implement the example media decoder, the examplemeter, and the example data analyzer of FIGS. 1, 2 and 3 and to performthe processes of FIG. 5 to determine a view edge for the media data.

FIG. 9 is an example representation of a comparison between the pixelmap and the field of view of FIGS. 4A and 4B that may be generated bythe example pixel matcher of FIG. 3.

FIG. 10 is a block diagram of an example processor platform capable ofexecuting the instructions of FIGS. 5, 6, 7 and/or 8 to implement theexample media decoder, the example meter and the example data analyzerof FIGS. 1, 2 and 3.

The figures are not to scale. Wherever possible, the same referencenumbers will be used throughout the drawing(s) and accompanying writtendescription to refer to the same or like parts.

DETAILED DESCRIPTION

Methods and apparatus for detecting unconfined view media (e.g.,360-degree videos or images, etc.) are disclosed. The examples disclosedherein enable detection of unconfined view media by determining if afirst view edge exceeds a threshold. An example method of detectingunconfined view media includes generating a reference pixel map formedia data, detecting a field of view for a presentation of the mediadata, determining a first view edge based on the field of view and thereference pixel map, and determining that the media data corresponds tounconfined view media based on the first view edge. In some examples, amedia decoder executed on a media device captures the media data from amedia source, the media data includes metadata and pixel data. In someexamples, the method includes processing the reference pixel map with avirtual reality renderer to generate a field of view for presentation.In some examples, detecting the field of view for the presentation ofthe media data includes detecting the field of view generated by thevirtual reality renderer. In some examples, the method includes matchingthe pixels of the field of view to the pixels of the reference pixelmap. In some examples, the method includes determining the first viewedge from a border of the field of view subsequent identifying a matchin the reference pixel map, and determining that the media datacorresponds to unconfined view media when the first view edge exceeds athreshold. In some examples, the method includes generating mediamonitoring data based on the determination of unconfined view media andtransmitting the media monitoring data to a collection facility.

An example apparatus for detecting unconfined view media, by executinginstructions with a processor, includes a pixel map generator togenerate a reference pixel map for media data, a field of view detectorto detect a field of view for a presentation of the media data, and aview edge determiner to determine a first view edge based on the fieldof view and the reference pixel map and that the media data correspondsto unconfined view media based on the first view edge. In some examples,the pixel map generator captures the media data from a media source, themedia data includes metadata and pixel data. In some examples, theapparatus includes a virtual reality renderer to process the referencepixel map to generate a field of view for presentation. In someexamples, the field of view detector detects the field of view generatedby the virtual reality renderer. In some examples, the apparatusincludes a pixel matcher to match the pixels of the field of view to thepixels of the reference pixel map. In some examples, the view edgedeterminer determines the first view edge from a border of the field ofview subsequent identifying a match in the reference pixel map, anddetermines that the media data corresponds to unconfined view media whenthe first view edge exceeds a threshold. In some examples, the apparatusincludes a data analyzer to generate media monitoring data based on thedetermination of unconfined view media. In some examples, the dataanalyzer is to transmit the media monitoring data to a collectionfacility.

FIG. 1 illustrates an example media detection system 100 in accordancewith the teachings of this disclosure. The system 100 includes a mediasource 102, a network 104, and a media presentation device 106. Themedia presentation device 106 includes, among other things, a mediadecoder 107 and a meter 108. The system 100 further includes a dataanalyzer 110, a data collection facility 112 and a database 114.

The example media source 102 is one or more media source(s) that supplymedia content to one or more presentation device(s) 106 via anydistribution medium (e.g., cable, radio frequency, satellite, internet,physical media, etc.). Example media sources include Netflix®, YouTube®,Hulu®, the iTunes® Media Store, Napster™, Yahoo! Music™, Rhapsody™, etc.The example media source 102 may provide, for example, audio, video,image, text, and/or any combination thereof, in addition to identifyingdata associated with the provided media content. In some examples, noidentifying data and/or inaccurate identifying data may be provided bythe media source 102 or by another source. For example, the media source102 may be a file transfer protocol (FTP) server provided by anindividual that has (intentionally or unintentionally) mislabeled themedia content. Accordingly, the identifying data (e.g., metadata)associated with media content stored on the presentation device(s) 106may not always be trusted to be accurate. However, media content mayinclude protections to ensure that identifying data remains accurate(e.g., is not altered by an end-user of external program(s)). Forexample, certain types of media content may include digital rightsmanagement (DRM) technology, copy protection, etc. that preventsmetadata from being altered or indicates that the metadata has beenaltered.

In the illustrated example of FIG. 1, the media source 102, thepresentation device 106, the data analyzer 110 and the data collectionfacility 112 are communicatively coupled via any type(s) of publicand/or private IP networks 104. In the illustrated example, the network104 is implemented by the Internet. However, any type(s) of past,current, and/or future communication network(s), communicationsystem(s), communication device(s), transmission medium(s), protocol(s),technique(s), and/or standard(s) could be used to communicatively couplethe components of FIG. 1 (e.g., the media source 102, the data analyzer110). Further, the example components of the illustrated system 100 maybe coupled to the network 104 via any type(s) of past, current, and/orfuture device(s), technology(ies), and/or method(s), includingvoice-band modems(s), digital subscriber line (DSL) modem(s), cablemodem(s), Ethernet transceiver(s), optical transceiver(s), virtualprivate network (VPN) connection(s), Institute of Electrical andElectronics Engineers (IEEE) 802.11x (a.k.a. WiFi) transceiver(s), IEEE802.16 (a.k.a. WiMax), access point(s), access provider network(s), etc.Further, the network 104 may be implemented by one or a combination(s)of any hardwire network, any wireless network, any hybrid hardwire andwireless network, a local area network, a wide area network, a mobiledevice network, a peer-to-peer network, etc. For example, a firstnetwork may connect the media source 102 to the presentation device 106,a second network may connect the presentation device 106 to the dataanalyzer 110, while a third network may connect the data analyzer 110 tothe data collection facility 112. Further, while the example database114 is shown as connected directly to the example data collectionfacility 112, in some implementations, the database 114 may be connectedto the data collection facility 112 via the network 104 or via a secondnetwork (not shown).

The presentation device 106 is capable of receiving media content fromthe media source 102. In addition, the presentation device 106 mayreceive media content locally. For example, the presentation device 106may download audio and/or video content from one or more media source(s)102 and/or may receive audio and/or video content that is downloadedfrom CDs, DVDs, memory cards, etc. that are inserted in the presentationdevice(s) 106 by the owner(s)/operator(s) of the presentation device(s)106.

The presentation device 106 may be any type of device capable ofpresenting and/or storing media content. For example, the presentationdevice 106 may be implemented by a television, a personal computer, alaptop computer, a media center computer, a digital video recorder, amobile computer device, a console gaming system, a portable video/audioplayer, a removable media player (e.g., a digital versatile disk (DVD)player/recorder), a set top box (STB), a tablet computer, a cell phone,a portable gaming device, a video cassette recorder/player, and/or anyother type of presentation device and/or storage medium (e.g., a harddisc drive, compact disc (CD), digital versatile disk (DVD), flashmemory, random access memory (RAM), etc.).

To collect media data to determine if media is unconfined or confined,the example presentation device 106 includes a media decoder 107 and ameter 108, which are described in greater detail below in connectionwith FIGS. 2 and 3. Alternatively, the media decoder 107 and the meter108 may be separate from the presentation device 106. For example, themedia decoder 107 and/or the meter 108 may be a separate deviceconnected to the media source 102. In the illustrated example of FIG. 1,owner(s) and/or household(s) associated with the presentation device 106have been selected (e.g., statistically or randomly) and/or volunteeredto participate in a monitoring panel. In particular, theowners/operators of the example presentation device 106 have agreed toparticipate in the monitoring panel and to have the media content ontheir respective presentation device(s) 106 monitored by, for example, amedia consumption metering entity. For example, where the presentationdevice(s) 106 is implemented by personal computers, the time, duration,and/or visited Internet protocol (IP) addresses of web-browser sessionsmay be monitored and reported (e.g., to a database). In such instances,the meter 108 may be integrated (e.g., via a download over the Internetor installed by a manufacturer) into existing monitoring software on thepresentation device(s) 106.

Additionally or alternatively, the participants have agreed to permitthe audience measurement entity to collect media data from theirlibrary(ies) of media content. Additionally or alternatively, media datamay be collected from presentation devices associated with person(s) whoare not participants of the monitoring panel (e.g., anonymously). Forexample, the meter 108 may be downloaded (e.g., via the Internet orremovable media, such as a CD) and/or installed on one or morepresentation devices of any consenting party or entity. This consent maybe made with or without an exchange of consideration. In some examples,the meter 108 may be bundled with other software applications toencourage users to download and execute the meter 108. Further, in someexamples, monitoring may be performed without the consent of theowners/operators of certain presentation devices when such consent isnot required. Thus, media data may be collected (e.g., via the meter108) from the presentation device 106 of members of a media consumptionmonitoring panel, non-members of the panel, and/or any combinationthereof.

Generally, the example media decoder 107 collects media data from anymedia stored/received at the presentation device 106 to decode the mediadata and process it for presentation at the presentation device 106. Themeter 108 to collect the decoded media data from the media decoder 107to detect unconfined view media (e.g., 360-degree view media). The meter108 sends the detected data (e.g., a set or subset of the data) to thedata analyzer 110, either directly or via the network 104. In theillustrated example of FIG. 1, the media data sent to the data analyzer110 explicitly identifies the media content as unconfined or confinedview media. The data analyzer 110 collects media data from the meter 108to generate media monitoring data for the media content (e.g., metadataidentifying attributes of the media content including, for example, thefile name of the media content, the format of the media content (e.g.mp3, wmv, etc.), the type of the media content, the artist(s), thecopyright holder(s), any program identification codes present in themedia, one or more signatures or set(s) of signature(s), metadata, etc.)and sends the media monitoring data to the data collection facility 112.Media monitoring data is data that may be used to identify media contentassociated therewith in the absence of identifying data (e.g., bycomparing a first signature from a first (unknown) media file to asecond signature from a second (known) media file, it may be determinedthat the media content of the first and second media files are the samewhen the first signature substantially matches the second signature).

The example media decoder 107 is configured to decode media datareceived at the example presentation device 106. When media datareceived via the media source 102 is encoded and/or encrypted, theexample media decoder 107 decodes and/or decrypts the media data into,for example, a form suitable for output to the presentation device 106.Example outputs to the presentation device 106 include, but are notlimited to, an RE output module, a component video output module, and/ora high-definition multimedia interface (HDMI) module. Further, theexample media decoder 107, may be implemented by hardware, software,firmware and/or any combination thereof. The media decoder 107 and theseprocesses are described below in greater detail in connection with FIG.2.

The example meter 108 of FIG. 1 is capable of automatically locatingmedia content on the presentation device 106 on which the meter 108 isinstalled. Further, the meter 108 may be capable of collecting decodedmedia data from the media decoder 107. Additionally or alternatively,the meter 108 may be capable of monitoring media content playback,download, and/or streaming (e.g., from the Internet, from anothercomputer, from a physical media, etc.) at the presentation device 106 onwhich the meter 108 is installed. The meter 108 and these processes aredescribed below in greater detail in connection with FIG. 3. While onepresentation device 106 is illustrated in the example system 100 of FIG.1, any number of presentation devices may be provided to implement thecollection and/or generation of media data described herein. Inaddition, other presentation devices that are not monitored (e.g., donot include the meter 108) may be connected to the network 104.

In view of the foregoing, the example system 100 is used to determineunconfined or confined view media. As described below in connection withFIGS. 2, 3, 4 and 5, the example system 100 utilizes the media decoder107 and the meter 108 installed or attached on the presentation device106 to collect media data from the media source 102 transmitted to thepresentation device 106 for presentation. Specifically, the mediadecoder 107 generates a pixel map from the collected media data andprocesses the pixel map to determine a field of view for presentation atthe presentation device 106. The meter 108 collects the pixel map andfield of view of the media decoder 107 and compares the pixel map andthe field of view to determine a view edge to identify unconfined orconfined view media. Further, in this example, the meter 108 sends theidentification of unconfined or confined view media to the data analyzer110, the data analyzer 110 generates media monitoring data for the mediadata and transmits the media monitoring data to the collection facility112 for storage in the database 114.

The example data analyzer 110 is communicatively coupled to thepresentation device 106 and the data collection facility 112 andanalyzes identifying data associated with media content (e.g., asdetected by the meter 108 and/or as obtained from other source(s)). Thedata analyzer 110 may be any type of device or memory capable ofstoring, analyzing and transmitting the identifying data as describedherein. Although only one data analyzer 110 is shown in FIG. 1, multipledata analyzers may be provided. Further, the example data analyzer 110may include multiple memories, and/or other storage devices to maintainand provide access to collected data.

The example data collection facility 112 is any facility or servercapable of receiving and storing media monitoring data provided by, forexample, the data analyzer 110 and/or the meter 108 installed on thepresentation device(s) 106. Further, the example data collectionfacility 112 facilitates storage and retrieval of media monitoring datain/from the database 114. In the illustrated example, the datacollection facility 112 is implemented by an audience metering facilitythat tracks the identification of unconfined or confined view media.While a single data collection facility 112 is shown in the examplesystem 100 of FIG. 1, multiple data collection facilitates may beimplemented in some implementations.

The example database 114 is communicatively coupled to the datacollection facility 112 and comprises a database that stores mediamonitoring data associated with media content (e.g., as detected by themeter 108 and/or as obtained from other source(s)). The database 114 maybe any type of device or memory capable of storing the identifying dataand reference data described herein. Although only one database 114 isshown in FIG. 1, multiple databases (or storage devices or memory) maybe provided. Further, the example database 114 may include multipledatabases, memories, and/or other storage devices to maintain andprovide access to collected data.

FIG. 2 is a block diagram of an example implementation of the mediadecoder 107 of FIG. 1. The example media decoder 107 includes a pixelmap generator 204, a VR renderer 206, and a field of view 208. For easeof description, the following will discuss an implementation in whichthe media decoder 107 is installed in the presentation device 106.However, one or more version(s) of the media decoder 107 may beadditionally or alternatively installed on the presentation device(s)106, and/or on any other device capable of presenting and/or storingmedia content.

The example pixel map generator 204 of FIG. 2 receives and/or identifies(e.g., via a search, via an API call, etc.) media content stored on oraccessible by the presentation device 106. In the illustrated example,the pixel map generator 204 monitors media applications executing on thepresentation device 106. For example, the pixel map generator 204 may bea plug-in installed in Microsoft's Windows® Media Player, may monitorYouTube® software using a program interface to YouTube®, etc. In theillustrated example, the pixel map generator 204 searches for and/orlocates media content on the presentation device 106 regardless ofwhether the media content is currently being presented or has ever beenpresented on the presentation device 106. In the illustrated example,the pixel map generator 204 searches through a directory structure ofmemory (e.g., a hard disk, an external memory, an attached mediaconsumption device, such as an iPad®, etc.) connected to thepresentation device 106, and/or monitors media content as it isdownloaded to the presentation device 106 (e.g., media contentdownloaded from an external device, media content downloaded via aconnected network, such as the network 104, etc.). Further, the pixelmap generator 204 utilizes a combination of monitoring one or more mediaapplications and locating media content on and/or accessible by thepresentation device 106. While the foregoing describes several ways inwhich the pixel map generator 204 accesses media content available tothe presentation device 106, any other method of locating such mediacontent may be used.

The example pixel map generator 204 is configured to recognize the type(e.g., protected audio, unprotected audio, video depicted image, Windowsmedia audio (WMA), etc.) of the media content (e.g., using metadata,using a file extension, etc.) and/or to recognize the state of the mediacontent (e.g., media content that has been modified by an end user,media content that has not been modified, media content that has beencreated by an end user, etc.). The example pixel map generator 204 isalso structured to exclude certain types of media content from (and/orto include content in certain state(s) in) the media data collectionprocess. For example, the pixel map generator 204 of the illustratedexample is configured to only accept media content that has not beenmodified or created by an end user to increase the likelihood thatmetadata associated with the media content is accurate. In someexamples, the pixel map generator 204 may be configured to only acceptmedia content that is identified as having been received from a sourcethat has been determined to be reputable (e.g., a media contentprovider, such as the media source 102 of FIG. 1, may be consideredreputable whereas a user-created file may be considered non-reputable).Further, the pixel map generator 204 may be configured to only acceptmedia data whose metadata is protected (e.g., encrypted) so that itcannot be changed by end users. While the foregoing provides examplemethods for determining which media content should be accepted by thepixel map generator 204, any method may be used to maximize thelikelihood that identifying data (e.g., metadata) and/or reference data(e.g., a code, series of codes, signature, series of signatures, etc.)associated with the media data is accurate and/or legally accessible.

The pixel map generator 204 of the illustrated example may receive anindication of the availability of located media data. For example, thepixel map generator 204 may receive a copy of the data access path bywhich the located media content may be retrieved by the pixel mapgenerator 204, may receive a link to the media content to the pixel mapgenerator 204, may receive a copy of the media content, etc.

The example pixel map generator 204 extracts identifying data fromand/or associated with the media content located or identified by theexample pixel map generator 204. To obtain identifying information, thepixel map generator 204 may utilize any available method for locating,for example, metadata identifying one or more attributes (e.g.,unconfined media, a pixel size, a pixel ratio, a display size, etc.) ofthe media content. For example, the pixel map generator 204 may extractmetadata that is embedded or hidden in the media content itself, receivemetadata from a media application (e.g., a media handler) that isprocessing or has processed the media content, retrieve metadata from alocal or external database associated with the media content (e.g., aNetflix® library database), prompt the owner/operator of thepresentation device 106 for identifying information associated with themedia content, etc.

To generate a reference pixel map, the pixel map generator 204 extractsan image file (e.g., a Portable Pixel Map (.ppm), a Bitmap (.bmp), etc.)from the media data associated with the media content located oridentified by the example pixel map generator 204, for example. Thepixel map generator 204 may utilize the image file along with theattributes of the identifying data to map the pixels in an array. Forexample, the pixel map generator 204 maps pixels corresponding tolocations of the presentation device 106. The pixel map generator 204maps the locations of the presentation device 106 to an array of pixelsbased on rows and columns, Each pixel in the array is identified by itscorresponding row and column, e.g., elements represented by a (Red,Green, Blue) value on the pixel map 402 as shown in FIG. 4A, representdistinct pixels. The array of pixels is generated such that eachlocation of the presentation device 106 is represented by a pixel of thearray. In this example, the resulting array of pixels is a pixel map,similar to the pixel map 402 of FIG. 4A. FIGS. 4A and 4B are examplerepresentations of the pixel map 402 and a field of view 404 that may begenerated using the example pixel map generator 204 and VR renderer 206of FIG. 2. The pixel map 402 illustrates media data from the mediasource 102 that has been generated by the pixel map generator 204. Incontrast the pixel map 402, the field of view 404 illustrates a pixelmap (e.g., the pixel map 402) that has been rendered for presentation atthe presentation device 106 via the VR renderer 206, as described infurther detail below. In some examples, the field of view 404 is thefield of view 208.

The example VR renderer 206 receives the pixel map from the pixel mapgenerator 204 for processing to determine the field of view 208 of thepresentation device 106. Additionally, the example VR renderer 206extracts identifying data from and/or associated with the media contentlocated or identified by the example pixel map generator 204. To obtainidentifying information, the VR renderer 206 may utilize any availablemethod for locating, for example, metadata identifying one or moreattributes (e.g., unconfined media, a pixel size, a pixel ratio, adisplay size, etc.) of the media content. For example, the VR renderer206 may extract metadata that is embedded or hidden in the media contentitself, receive metadata from a media application (e.g., a mediahandler) that is processing or has processed the media content, retrievemetadata from a local or external database associated with the mediacontent (e.g., a Netflix® library database), prompt the owner/operatorof the presentation device 106 for identifying information associatedwith the media content, etc. Alternatively, the pixel map generator 204may provide the necessary identifying information that the VR renderer206 may need for processing the pixel map.

To process to the pixel map for presentation at the presentation device106, the VR renderer 206 manipulates the pixel map using the identifyinginformation and display information for the presentation device 106(e.g., display size, display ratio, etc.). For example, when the VRrenderer 206 extracts identifying information indicating unconfinedmedia, the VR renderer 206 will determine the display information andprocess the pixel map based on the display information and theidentifying information using any virtual reality algorithm. Inparticular, the VR renderer 206 will detect each location of thepresentation device 106 to be viewed using the display information andthe identifying information, and may identify the pixel representing thedetected location or the pixel to be displayed in that location based onthe output of the virtual reality algorithm. For example, the VRrenderer 206 may indicate locations of the display in a sequenceindicated by the virtual reality algorithm. The VR renderer 206 willdetect the indicated locations in order and identify the pixelscorresponding to the indicated, locations. The VR renderer 206 willstore the identified pixels as elements of the field of view 208, e.g.,the VR renderer 206 will store the coordinates corresponding to thepixels associated with the indicated locations, respectively.

When the VR renderer 206 determines that the entire pixel map has beenprocessed, the VR renderer 206 retrieves the stored pixels and generatesthe field of view 208. For example, the VR renderer 206 retrieves theidentified pixels and generates the field of view 208 corresponding tothe indicated locations. Subsequently the VR renderer 206 may send thefield of view 208 to the presentation device 106 and/or the meter 108for display and/or further processing.

FIG. 3 is a block diagram of an example implementation of the meter 108of FIG. 1. The example meter 108 of FIG. 3 includes a pixel map detector304, a field of view detector 306, a pixel matcher 308, a view edgedeterminer 310, and a transmitter 312. For ease of description, thefollowing will discuss an implementation in which the meter 108 isinstalled in the presentation device 106. However, one or moreversion(s) of the meter 108 may be additionally or alternativelyinstalled on the presentation device(s) 106, and/or on any other devicecapable of presenting and/or storing media content.

In the illustrated example, the pixel map detector 304 detects the pixelmap generated by the pixel map generator 204. The field of view detectordetects the field of view 208 generated by the VR renderer 206. Theexample pixel matcher 308 extracts the pixel map from the pixel mapdetector 304 and the field of view from the field of view detector 306,similar to the pixel map 402 and the field of view 404 of FIGS. 4A-4B.Subsequently, the pixel matcher 308 matches each pixel from the field ofview (e.g., field of view 404 of FIG. 4B) to each pixel of the pixel map(e.g., the pixel map 402 of FIG. 4A). When a match is identified, thepixel matcher 308 marks the pixel on the pixel map that has beenmatched. When all the pixels have been matched, the pixel matcher 308produces a pixel match (e.g., the pixel match 902 of FIG. 9) that issent to the view edge determiner 310 for further analysis.

To determine if the media content is unconfined media or confined media,the view edge determiner 310 compares outer edges of the marked pixelsof the pixel match to a threshold (e.g., a straight line). For example,the view edge determiner 310 may compare the top edge of the markedpixels to the threshold. If the top edge is a straight line, the viewedge determiner 310 may indicate that the media is confined media.However, if the top edge is not a straight line (e.g., takes on a shapesimilar to the pixel match 902 of FIG. 9) the view edge determiner 310may indicate the media is unconfined media. In some examples, the viewedge determiner 310 may extract the shape of the marked pixels andcompare it to a stored shape. For example, the view edge determiner 310may extract the shape of the marked pixels, compare the shape to storedshapes, and determine that the shape is a rectangle representingconfined media. In some examples, the view edge determiner 310 maydetermine that the shape is warped slightly, similar to the shape of thepixel match 902, representing unconfined media. The indication ofunconfined or confined media is sent to the data analyzer 110 via thetransmitter 312.

The example transmitter 312 provides an interface between the network104, the data analyzer 110 and the meter 108. In the illustratedexample, the transmitter 312 is provided by the meter 108 and is adaptedto communicate with the network 104. For example, the transmitter 312may be a wired network interface, a wireless network interface, aBluetooth network interface, etc. and may include the associatedsoftware needed to facilitate communication between the meter 108 andthe network 104. Additionally, the transmitter 312 may be adapted tocommunicate directly with a source(s).

The example data analyzer 110 conveys the indication of confined orunconfined media from the meter 108 along with the identifyinginformation from the media decoder 107 to the collection facility 112 ofFIG. 1, via the network 104, along with a query requesting that thecollection facility 112 indicate whether reference data for the mediacontent is already included at the collection facility 112 (e.g., storedin the database 114 of FIG. 1). If the collection facility 112 responds(e.g., via the network 104) with a message indicating that the referencedata associated with the extracted identifying information has not beenstored or is not validated (e.g., an insufficient number of presentationdevices have sent matching reference data for the associated mediacontent), the data analyzer 110 conveys the extracted identifying datato the collection facility 112 for storage in the database 114.Alternatively, the data analyzer 110 may not query the collectionfacility 112 and, rather, may send the identifying data after everyindication. In other words, identifying information and reference datamay be conveyed to the collection facility 112 without first queryingthe collection facility 112.

The example data analyzer 110 generates media monitoring data for mediacontent identified as unconfined or confined media. As described above,the generated media monitoring data is data that may be used to identifythe media content in the absence of reliable identifying information.For example, the media monitoring data may be a signature comprising acharacteristic of the media content that can serve as a proxy for thecomplete content. Generally, the example data analyzer 110 may extractmetadata from the media content, may generate one or more signatures ofthe media content, may recognize one or more watermarks (e.g., source orcontent identification codes or other data embedded in and/or otherwiseassociated with, the media content, etc. Preferably, the data analyzer110 collects and/or generates all available type(s) of media monitoringdata. Alternatively, if the collection facility 112 responds that only acertain type of media monitoring data is needed for that particularpiece of content (e.g., a code), only that particular type of mediamonitoring data is sent (if available) to the collection facility 112.Any method of combining and/or associating the media data and theidentifying data may be used. For example, the data analyzer 110 maycombine the media data and the identifying information in a zip file,may associate the same index value with the media data and theidentifying information, may send either one or both of the media dataand the identifying information with a message indicating that they areassociated with each other, etc.

While an example manner of implementing the media decoder 107 and themeter 108 of FIG. 1 is illustrated in FIGS. 2 and 3, one or more of theelements, processes and/or devices illustrated in FIGS. 2 and 3 may becombined, divided, re-arranged, omitted, eliminated and/or implementedin any other way. Further, the data analyzer 110, the pixel mapgenerator 204, the VR renderer 206, the pixel map detector 304, thefield of view detector 306, the pixel matcher 308, and the view edgedeterminer 310 of FIGS. 1, 2 and 3 may be implemented by hardware,software, firmware and/or any combination of hardware, software and/orfirmware. Thus, for example, any of the example data analyzer 110, theexample pixel map generator 204, the example VR renderer 206, theexample pixel map detector 304, the example field of view detector 306,the example pixel matcher 308, and the example view edge determiner 310could be implemented by one or more analog or digital circuit(s), logiccircuits, programmable processor(s), application specific integratedcircuit(s) (ASIC(s)), programmable logic device(s) (PLD(s)) and/or fieldprogrammable logic device(s) (FPLD(s)). When reading any of theapparatus or system claims of this patent to cover a purely softwareand/or firmware implementation, at least one of the example dataanalyzer 110, the example pixel map generator 204, the example VRrenderer 206, the example pixel map detector 304, the example field ofview detector 306, the example pixel matcher 308, and the example viewedge determiner 310 is/are hereby expressly defined to include atangible computer readable storage device or storage disk such as amemory, a digital versatile disk (DVD), a compact disk (CD), a Blu-raydisk, etc. storing the software and/or firmware. Further still, theexample media decoder 107 and the example meter 108 of FIGS. 2 and 3 mayinclude one or more elements, processes and/or devices in addition to,or instead of, those illustrated in FIGS. 2 and 3, and/or may includemore than one of any or all of the illustrated elements, processes anddevices.

A flowchart representative of example machine readable instructions forimplementing the media decoder 107, the meter 108, and the data analyzer110 of FIG. 1 is shown in FIGS. 5, 6, 7, and 8. In this example, themachine readable instructions comprise a program for execution by aprocessor such as the processor 1012 shown in the example processorplatform 1000 discussed below in connection with FIG. 10. The programmay be embodied in software stored on a tangible computer readablestorage medium such as a CD-ROM, a floppy disk, a hard drive, a digitalversatile disk (DVD), a Blu-ray disk, or a memory associated with theprocessor 1012, but the entire program and/or parts thereof couldalternatively be executed by a device other than the processor 1012and/or embodied in firmware or dedicated hardware. Further, although theexample program is described with reference to the flowchart illustratedin FIG. 5, many other methods of implementing the example media decoder107, the example meter 108, and the example data analyzer 110 mayalternatively be used. For example, the order of execution of the blocksmay be changed, and/or some of the blocks described may be changed,eliminated, or combined.

As mentioned above, the example processes of FIGS. 5, 6, 7, and 8 may beimplemented using coded instructions (e.g., computer and/or machinereadable instructions) stored on a tangible computer readable storagemedium such as a hard disk drive, a flash memory, a read-only memory(ROM), a compact disk (CD), a digital versatile disk (DVD), a cache, arandom-access memory (RAM) and/or any other storage device or storagedisk in which information is stored for any duration (e.g., for extendedtime periods, permanently, for brief instances, for temporarilybuffering, and/or for caching of the information). As used herein, theterm tangible computer readable storage medium is expressly defined toinclude any type of computer readable storage device and/or storage diskand to exclude propagating signals and to exclude transmission media. Asused herein, “tangible computer readable storage medium” and “tangiblemachine readable storage medium” are used interchangeably. Additionallyor alternatively, the example processes of FIGS. 5, 6, 7, and 8 may beimplemented using coded instructions (e.g., computer and/or machinereadable instructions) stored on a non-transitory computer and/ormachine readable medium such as a hard disk drive, a flash memory, aread-only memory, a compact disk, a digital versatile disk, a cache, arandom-access memory and/or any other storage device or storage disk inwhich information is stored for any duration (e.g., for extended timeperiods, permanently, for brief instances, for temporarily buffering,and/or for caching of the information). As used herein, the termnon-transitory computer readable medium is expressly defined to includeany type of computer readable storage device and/or storage disk and toexclude propagating signals and to exclude transmission media. As usedherein, when the phrase “at least” is used as the transition term in apreamble of a claim, it is open-ended in the same manner as the term“comprising” is open ended.

The program 500 of FIG. 5 begins at block 502 when the pixel mapgenerator 204 detects presentation of media to the presentation device106 from the media source 102 and/or detects the presentation device 106requesting media from the media source 102 (e.g., an API call). Whenmedia is detected as being presented, the pixel map generator 204captures media data from the media being presented (block 504). Themedia data collected may include, file type, image frames, pixelinformation, audio, display setting of the presented media, for example.

Once the media data is collected, the pixel map generator 204 generatesa reference pixel map for the captured media data that is subsequentlydetected by the pixel map detector 304, as shown in FIG. 4A (block 506).At block 508, the field of view detector 306 detects a field of view forthe captured media data based on the field of view generated by the VRrenderer 206 at block 506, as shown in FIG. 4B. The pixel matcher 308compares the field of view from the field of view detector 306 to thepixel map from the pixel map detector 304 and determines a pixel match,as shown in FIG. 9 (block 510). The view edge determiner 310 comparesthe edge of the pixel match from the pixel matcher 308 to a threshold atblock 512. Next, it is determined if the view edge meets the threshold(block 514). If the view edge does not meet the threshold an indicationof unconfined view media is stored (block 516), the indication is sentto the data analyzer 110 and the data analyzer 110 proceeds to transmitmedia monitoring data (block 520). If the view edge meets the thresholdan indication of confined media is stored (block 518), the indication issent to the data analyzer 110 and the data analyzer 110 proceeds totransmit media monitoring data (block 520).

FIG. 6 illustrates an example of performing the processes of block 506.The program of FIG. 6 begins when the pixel map generator 204 extractsthe pixel map from the media data (block 602). The pixel map generator204 processes the pixel map and maps the pixels in an array (block 604).The process then returns to FIG. 5.

FIG. 7 illustrates an example of performing the processes of block 508.The program of FIG. 7 begins when the VR renderer 206 processes thepixel map from the pixel map generator 204 (block 702). The field ofview detector 306 captures the output of the VR renderer 206 (i.e., thefield of view 208) (block 704). The process then returns to FIG. 5.

FIG. 8 illustrates an example of performing the processes of block 510.The program of FIG. 8 begins when the pixel matcher 308 matches thepixels from the field of view 404 to the pixel map 402 (block 802). Theview edge determiner 310 determines a border for the field of view 404in the pixel map 402 (e.g., the pixel match 902) (block 804). The viewedge determiner 310 determines a view edge based on the border of thefield of view (block 806) as shown in FIG. 9. The process then returnsto FIG. 5.

FIG. 9 is an example representation of a pixel match 902 based on thecomparison between the pixel map 402 and the field of view 404 of FIGS.4A and 4B that may be generated by the example pixel matcher 308 of FIG.3.

FIG. 10 is a block diagram of an example processor platform 1000 capableof executing the instructions of FIGS. 5, 6, 7, and 8 to implement themedia decoder 107, the meter 108, and the data analyzer 110 of FIGS. 1,2, and 3. The processor platform 1000 can be, for example, a server, apersonal computer, a mobile device (e.g., a cell phone, a smart phone, atablet such as an iPad™), a personal digital assistant (PDA), anInternet appliance, a DVD player, a CD player, a digital video recorder,a Blu-ray player, a gaming console, a personal video recorder, a set topbox, or any other type of computing device.

The processor platform 1000 of the illustrated example includes aprocessor 1012. The processor 1012 of the illustrated example ishardware. For example, the processor 1012 can be implemented by one ormore integrated circuits, logic circuits, microprocessors or controllersfrom any desired family or manufacturer.

The processor 1012 of the illustrated example includes a local memory1013 (e.g., a cache). The processor 1012 of the illustrated example isin communication with a main memory including a volatile memory 1014 anda non-volatile memory 1016 via a bus 1018. The volatile memory 1014 maybe implemented by Synchronous Dynamic Random Access Memory (SDRAM),Dynamic Random Access Memory (DRAM), RAMBUS Dynamic Random Access Memory(RDRAM) and/or any other type of random access memory device. Thenon-volatile memory 1016 may be implemented by flash memory and/or anyother desired type of memory device. Access to the main memory 1014,1016 is controlled by a memory controller.

The processor platform 1000 of the illustrated example also includes aninterface circuit 1020. The interface circuit 1020 may be implemented byany type of interface standard, such as an Ethernet interface, auniversal serial bus (USB), and/or a PCI express interface.

In the illustrated example, one or more input devices 1022 are connectedto the interface circuit 1020. The input device(s) 1022 permit(s) a userto enter data and commands into the processor 1012. The input device(s)can be implemented by, for example, an audio sensor, a microphone, acamera (still or video), a keyboard, a button, a mouse, a touchscreen, atrack-pad, a trackball, isopoint and/or a voice recognition system.

One or more output devices 1024 are also connected to the interfacecircuit 1020 of the illustrated example. The output devices 1024 can beimplemented, for example, by display devices (e.g., a light emittingdiode (LED), an organic light emitting diode (OLED), a liquid crystaldisplay, a cathode ray tube display (CRT), a touchscreen, a tactileoutput device, a printer and/or speakers). The interface circuit 1020 ofthe illustrated example, thus, typically includes a graphics drivercard, a graphics driver chip or a graphics driver processor.

The interface circuit 1020 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver, amodem and/or network interface card to facilitate exchange of data withexternal machines (e.g., computing devices of any kind) via a network1026 (e.g., an Ethernet connection, a digital subscriber line (DSL), atelephone line, coaxial cable, a cellular telephone system, etc.).

The processor platform 1000 of the illustrated example also includes oneor more mass storage devices 1028 for storing software and/or data.Examples of such mass storage devices 1028 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, RAIDsystems, and digital versatile disk (DVD) drives.

The coded instructions 1032 of FIGS. 5, 6, 7, and 8 may be stored in themass storage device 1028, in the volatile memory 1014, in thenon-volatile memory 1016, and/or on a removable tangible computerreadable storage medium such as a CD or DVD.

From the foregoing, it will be appreciated that the above disclosedmethods, apparatus and articles of manufacture detect unconfined viewmedia. Currently, unconfined view media (e.g., 360-degree view media)files are large and difficult to identify/process with normal media fileprocessing techniques. The disclosed methods allow the detection of suchmedia so that it can be handled properly for capturing andcategorization. Additionally, the identification of unconfined media isbeneficial for advertisement detection and placement. In particular,advertisers will be able to locate the field of view for a specificvideo and place/identify specific advertisements in the field of view.

Although certain example methods, apparatus and articles of manufacturehave been disclosed herein, the scope of coverage of this patent is notlimited thereto. On the contrary, this patent covers all methods,apparatus and articles of manufacture fairly falling within the scope ofthe claims of this patent.

What is claimed is:
 1. An apparatus for detecting unconfined view media,the apparatus comprising: at least one memory; instructions in theapparatus; and processor circuitry to execute the instructions to atleast: identify media displayed on a presentation device, the mediaincluding pixels; map the pixels in a first array corresponding tolocations of the presentation device; detect a field of view for themedia based on the mapped pixels, the field of view including a secondarray; compare a first shape of the first array to a second shape of thesecond array; and determine the media as an unconfined view in responseto the first shape being different from the second shape.
 2. Theapparatus of claim 1, wherein the processor circuitry is to capture themedia from a media source, the media including metadata and pixel data.3. The apparatus of claim 1, wherein the processor circuitry is torender virtual reality to extract metadata identifying one or moreattributes of the media, extract display information corresponding toattributes of a presentation device to present the media, and processthe mapped pixels based on the metadata and the display information togenerate a field of view for presentation at the presentation device. 4.The apparatus of claim 3, wherein the processor circuitry is to detectthe field of view generated by the virtual reality renderer.
 5. Theapparatus of claim 1, wherein the processor circuitry is to match pixelsof the field of view to the mapped pixels.
 6. The apparatus of claim 1,wherein the processor circuitry is to: determine a first view edge froma border of the field of view; and determine that the media correspondsto unconfined view media when the first view edge exceeds a threshold.7. The apparatus of claim 1, wherein the processor circuitry is togenerate media monitoring data based on the determination of theunconfined view.
 8. The apparatus of claim 7, wherein the processorcircuitry is to transmit the media monitoring data to a collectionfacility.
 9. A non-transitory computer-readable medium comprisinginstructions that, when executed, cause a processor to, at least:identify media displayed on a presentation device, the media includingpixels; map the pixels in a first array corresponding to locations ofthe presentation device; detect a field of view for the media based onthe mapped pixels, the field of view including a second array; compare afirst shape of the first array to a second shape of the second array;and determine the media as an unconfined view in response to the firstshape being different from the second shape.
 10. The non-transitorycomputer readable medium as defined in claim 9, wherein theinstructions, when executed, further cause the processor to capture themedia from a media source, the media including metadata and pixel data.11. The non-transitory computer readable medium as defined in claim 9,wherein the instructions, when executed, further cause the processor torender virtual reality to extract metadata identifying one or moreattributes of the media, extract display information corresponding toattributes of a presentation device to present the media, and processthe mapped pixels based on the metadata and the display information togenerate a field of view for presentation at the presentation device.12. The non-transitory computer readable medium as defined in claim 11,wherein the instructions, when executed, further cause the processor todetect the field of view generated by the virtual reality renderer. 13.The non-transitory computer readable medium as defined in claim 9,wherein the instructions, when executed, further cause the processor tomatch pixels of the field of view to the mapped pixels.
 14. Thenon-transitory computer readable medium as defined in claim 9, whereinthe instructions, when executed, further cause the processor to:determine a first view edge from a border of the field of view; anddetermine that the media corresponds to unconfined view media when thefirst view edge exceeds a threshold.
 15. The non-transitory computerreadable medium as defined in claim 9, wherein the instructions, whenexecuted, further cause the processor to generate media monitoring databased on the determination of the unconfined view.
 16. A method ofdetecting unconfined view media, the method comprising: identifying, byexecuting an instruction with a processor, media displayed on apresentation device, the media including pixels; mapping, by executingan instruction with the processor, the pixels in a first arraycorresponding to locations of the presentation device; detecting, byexecuting an instruction with the processor, a field of view for themedia based on the mapped pixels, the field of view including a secondarray; comparing, by executing an instruction with the processor, afirst shape of the first array to a second shape of the second array;and determining, by executing an instruction with the processor, themedia as an unconfined view in response to the first shape beingdifferent from the second shape.
 17. The method of claim 16, furtherincluding rendering virtual reality to extract metadata identifying oneor more attributes of the media, extract display informationcorresponding to attributes of a presentation device to present themedia, a process the mapped pixels based on the metadata and the displayinformation to generate a field of view for presentation at thepresentation device.
 18. The method of claim 17, further includingdetecting the field of view generated by the virtual reality renderer.19. The method of claim 16, further including determining a first viewedge from a border of the field of view; and determining that the mediacorresponds to unconfined view media when the first view edge exceeds athreshold.
 20. The method of claim 16, further including generatingmedia monitoring data based on the determination of the unconfined view.